import request from "@/utils/request";

/** 
 * 管理员获取全部新闻列表
 * @param {string} pageNum 页码
  * @param {string} pageSize 每页记录数
  * @returns
 */
export function adminGetArticles(pageNum, pageSize) {
    return request.get(`/article/admin?pageNum=${pageNum}&pageSize=${pageSize}`);
}

/** 
 * 审核通过
 * @param {string} articleId 
  * @returns
 */
export function approveArticle(articleId) {
    return request.post(`/article/approve/${articleId}`);
}

/** 
* 保存新闻
* @param {object} params 新闻请求类
* @param {number} params.id 新闻id
* @param {string} params.title 标题
* @param {string} params.content 内容
* @param {string} params.cover 封面
* @param {number} params.userId 发布者id
* @param {number} params.type 种类
* @returns
*/
export function createArticle(params) {
    return request.post(`/article/create`, params);
}

/** 
* 删除新闻
* @param {string} articleId 
* @returns
*/
export function deleteArticle(articleId) {
    return request.delete(`/article/delete/${articleId}`);
}

/** 
* id获取新闻详情
* @param {string} id 
* @returns
*/
export function getArticlesDetailById(id) {
    return request.get(`/article/detail/${id}`);
}

/** 
* 修改新闻
* @param {object} params 新闻请求类
* @param {number} params.id 新闻id
* @param {string} params.title 标题
* @param {string} params.content 内容
* @param {string} params.cover 封面
* @param {number} params.userId 发布者id
* @param {number} params.type 种类
* @returns
*/
export function modifyArticle(params) {
    return request.post(`/article/modify`, params);
}

/** 
* 发布新闻
* @param {object} params 新闻请求类
* @param {number} params.id 新闻id
* @param {string} params.title 标题
* @param {string} params.content 内容
* @param {string} params.cover 封面
* @param {number} params.userId 发布者id
* @param {number} params.type 种类
* @returns
*/
export function publishArticle(params) {
    return request.post(`/article/publish`, params);
}

/** 
* 审核失败
* @param {string} articleId 
* @returns
*/
export function rejectArticle(articleId) {
    return request.post(`/article/reject/${articleId}`);
}

/** 
 * 用户获取已发布的新闻列表
 * @param {string} pageNum 页码
  * @param {string} pageSize 每页记录数
  * @param {string} typeId 
  * @returns
 */
export function userGetArticles(params) {
    return request.get(`/article/user?pageNum=${params.pageNum}&pageSize=${params.pageSize}&typeId=${params.typeId}`);
  }